package br.com.velp.vskygeo.serviceimpl;

import br.com.velp.vskygeo.comum.SpringConstants;
import br.com.velp.vskygeo.dao.MysqlDAO;
import br.com.velp.vskygeo.dto.*;
import br.com.velp.vskygeo.service.MysqlService;
import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;

/**
 * <sumario>
 * <objetivo>"Rastreabilidade"</objetivo>
 * <autor>EDUARDO SANTOS DE OLIVEIRA</autor>
 * <versao>1.0.0.0</versao>
 * <data_criacao> 06.08.2013 </data_criacao>
 * <data_ultima_alteracao> N/A </data_ultima_alteracao>
 * <descricao> Serviço Responsável Pelas Operações 
 *             Inerentes ao Banco de Dados MySQL
 * </descricao>
 * </sumario>
 */
@Service()
@Lazy(SpringConstants.LAZY_BEANS)
public class MysqlServiceImpl implements MysqlService {
    
    @Autowired
    private MysqlDAO mysqlDAO;
    
    @Override
    public List<UltimoDadoLidoResultadoConsultaDTO> recuperarUltimosDadosLidos(UsuarioLogadoDTO usuarioLogado) {
        return this.mysqlDAO.recuperarUltimosDadosLidos(usuarioLogado);
    }
    
    @Override
    public List<OcorrenciaResultadoConsultaDTO> recuperarOcorrencias(UsuarioLogadoDTO usuarioLogado) {
        return this.mysqlDAO.recuperarOcorrencias(usuarioLogado);
    }
    
    @Override
    public List<PontoInteresseResultadoConsultaDTO> obterPontosInteresse(UsuarioLogadoDTO usuarioLogado) {
        return this.mysqlDAO.obterPontosInteresse(usuarioLogado);
    }
    
    @Override
    public List<HistoricoDadoLidoDTO> obterHistoricoDadoLido(Integer idMonitorado, Date dataInicial, Date dataFinal) {
        return this.mysqlDAO.obterHistoricoDadoLido(idMonitorado, dataInicial, dataFinal);
    }
    
}
